home *** CD-ROM | disk | FTP | other *** search
/ SGI Freeware 2002 November / SGI Freeware 2002 November - Disc 2.iso / dist / fw_hylafax.idb / usr / freeware / catman / u_man / cat1 / hfaxd.Z / hfaxd
Text File  |  2002-07-08  |  35KB  |  719 lines

  1. HFAXD(${MANNUM1_8})                  HFAXD(${MANNUM1_8})
  2.  
  3.  
  4.  
  5. NNAAMMEE
  6.        hfaxd - _H_y_l_a_F_A_X client-server protocol server
  7.  
  8. SSYYNNOOPPSSIISS
  9.        $${{LLIIBBEEXXEECC}}//hhffaaxxdd    [ --dd ] [ --qq _d_i_r    ] [ --oo _p_o_r_t ] [    --OO ] [ --ii
  10.        _p_o_r_t ] [    --II ] [ --ss _p_o_r_t ] [ --SS ]
  11.  
  12. DDEESSCCRRIIPPTTIIOONN
  13.        _h_f_a_x_d is    the _H_y_l_a_F_A_X program that  implements  the  server
  14.        portion of:
  15.  
  16.      the (new) client-server protocol,
  17.  
  18.      the  old  client-server protocol previously implemented
  19.       by the _f_a_x_d_._r_e_c_v program, and
  20.  
  21.      the Simple Network Paging Protocol (SNPP) used    to  sub
  22.       mit  message pager jobs to the IXO/TAP and UCP support.
  23.  
  24.        Additional client-server    protocols are planned  and  _h_f_a_x_d
  25.        is  intended  to    be the ``carrier'' through which they are
  26.        supported.
  27.  
  28.        _h_f_a_x_d is    typically used in one of two ways;  either  as    a
  29.        standalone  process that    is started at system boot time to
  30.        listen for client connections on    one or more ports, or  as
  31.        a  subservient process to the _i_n_e_t_d(${MANNUM1_8}) program.
  32.        The two forms of    use may    however    be combined  so     long  as
  33.        the  same  service  is not provided both    by the standalone
  34.        _h_f_a_x_d and through _i_n_e_t_d.
  35.  
  36. HHYYLLAAFFAAXX    ((NNEEWW)) CCLLIIEENNTT--SSEERRVVEERR PPRROOTTOOCCOOLL SSUUPPPPOORRTT
  37.        If _h_f_a_x_d    is started with    the --ii    option    it  will  service
  38.        clients    using  the  (new) _H_y_l_a_F_A_X client-server    protocol.
  39.        This protocol is    strongly related  to  the  Internet  File
  40.        Transfer     Protocol  (FTP);  so  much  so     in fact that FTP
  41.        client programs that include  support  for  ``quoted  com
  42.        mands''    may  be     used to communicate with _h_f_a_x_d    using the
  43.        new protocol.  (It should also be  possible  to    use  FTP-
  44.        aware  World Wide Web browsers such as Mosaic and Netscape
  45.        Navigator to access _H_y_l_a_F_A_X servers through the new proto
  46.        col;  but  the  current format for information returned in
  47.        directory listings confuses them.)
  48.  
  49.        The _h_f_a_x_d server    currently recognizes the following proto
  50.        col  requests;  case is not distinguished.  Entries marked
  51.        with a  can be used only    when the client    has  established
  52.        administrative privileges with ADMIN.
  53.  
  54.        RReeqquueesstt           DDeessccrriippttiioonn
  55.        ABOR           abort previous command
  56.        ACCT           specify account (ignored)
  57.        ADMIN           specify password    for administrative privileges
  58.        ALLO           allocate    storage    (vacuously)
  59.        ANSWER          request that call    be answered
  60.        APPE           append to a file
  61.        CDUP           change to parent    of current working directory
  62.        CHMOD           change mode of a    file
  63.        CHOWN          change owner of a    file
  64.        CWD           change working directory
  65.        DELE           delete a    file
  66.        DISABLE          disable outbound use of modem
  67.        ENABLE          enable outbound use of modem
  68.        HELP           give help information
  69.        FILEFMT           specify/query format for    returning file status
  70.        FORM           specify data transfer _f_o_r_m_a_t
  71.        IDLE           set idle-timer (in seconds)
  72.        JDELE           delete done or suspended    job
  73.        JINTR           interrupt job
  74.        JKILL           kill job
  75.        JNEW           create new job
  76.        JOB           set/query current job
  77.        JOBFMT           specify/query format for    returning job status
  78.        JPARM           specify/query job state parameter
  79.        JREST           reset current job state
  80.        JSUBM           submit job to scheduler
  81.        JSUSP           suspend job from    scheduling
  82.        JWAIT           wait for    job to complete
  83.        JGDELE           delete group of jobs
  84.        JGKILL           kill group of jobs
  85.        JGINTR           interrupt group of jobs
  86.        JGNEW           place current job in a new job group
  87.        JGPARM           set state parameter in a    group of jobs
  88.        JGREST           reset current state for a group of jobs
  89.        JGRP           set/query current job group
  90.        JGSUBM           submit group of jobs to scheduler
  91.        JGSUSP           suspend group of    jobs from scheduling
  92.        JGWAIT           wait for    group of jobs to complete
  93.        LIST           list files in a directory
  94.        MDTM           show last modification time of file
  95.        MODE           specify data transfer _m_o_d_e
  96.        MDMFMT           specify/query format for    returning modem    status
  97.        NLST           give name list of files in directory
  98.        NOOP           do nothing
  99.        PASS           specify password
  100.        PASV           prepare for server-to-server transfer
  101.        PORT           specify data connection port
  102.        PWD           print the current working directory
  103.        QUIT           terminate session
  104.        RCVFMT           specify/query format for    returing received facsimile status
  105.        REIN           reinitiate server state
  106.        REST           restart incomplete transfer
  107.        RETP           retrieve    the next page in a file
  108.        RETR           retrieve    a file
  109.        SHUT           schedule    server shutdown
  110.        SITE           non-standard commands (see next section)
  111.        SIZE           return size of file
  112.        STAT           return status of    server or file
  113.        STOR           store a file
  114.        STOT           store a temporary file with a unique name
  115.        STOU           store a file with a unique name
  116.        STRU           specify data transfer _s_t_r_u_c_t_u_r_e
  117.        SYST           show operating system type of server system
  118.        TYPE           specify data transfer _t_y_p_e
  119.        TZONE           specify timezone    handling for dates and times
  120.        USER           specify user name
  121.        VRFY           verify dialstring handling and/or least-cost routing
  122.  
  123.        The  following  non-standard  or    experimental commands are
  124.        supported through the SITE request.
  125.  
  126.        RReeqquueesstt        DDeessccrriippttiioonn
  127.        ADDMODEM           add/configure new modem for use
  128.        ADDUSER           add client access control entry
  129.        CONFIG           send configuration parameter setting to server
  130.        DELMODEM           deconfigure/remove modem
  131.        DELUSER           remove client access control entry
  132.        TRIGGER        register realtime event    trigger
  133.        HELP        give help information, e.g., SITE HELP
  134.  
  135.        In addition FTP requests    that are  specified  in     Internet
  136.        RFC 959 but not listed here are recognized, but not imple
  137.        mented.
  138.  
  139.        The _h_f_a_x_d server    will abort an active data  transfer  only
  140.        when  the  ABOR command is preceded by a    Telnet "Interrupt
  141.        Process"    (IP) signal and    a Telnet "Synch"  signal  in  the
  142.        command    Telnet    stream,    as described in    Internet RFC 959.
  143.        If a STAT command is received during a data transfer, pre
  144.        ceded  by  a  Telnet IP and Synch, transfer status will be
  145.        returned.
  146.  
  147. OOLLDD CCLLIIEENNTT--SSEERRVVEERR PPRROOTTOOCCOOLL SSUUPPPPOORRTT
  148.        If _h_f_a_x_d    is started with    the --oo    option    it  will  service
  149.        clients    using the old _H_y_l_a_F_A_X client-server protocol that
  150.        was used    in distributions prior to the 4.0 release.   Note
  151.        however    that  this  support is only available if _h_f_a_x_d is
  152.        compiled    with the support enabled.
  153.  
  154.        Emulation of the    old protocol is    important for  supporting
  155.        non-UNIX     clients  such    as the WinFlex client for Windows
  156.        systems and the MacFlex client for Macintosh systems.   It
  157.        is  strongly  recommended  however that unless you need to
  158.        support these old-style clients that you    not  enable  sup
  159.        port  for  the old protocol because of the inherent misde
  160.        sign of this protocol.
  161.  
  162. SSIIMMPPLLEE NNEETTWWOORRKK PPAAGGIINNGG PPRROOTTOOCCOOLL ((SSNNPPPP)) SSUUPPPPOORRTT
  163.        If _h_f_a_x_d    is started with    the --ss    option    it  will  service
  164.        clients    using the Simple Network Pager Protocol    (SNPP) as
  165.        specified in RFC    1861 (which obsoletes RFC 1645).
  166.  
  167.        The _h_f_a_x_d server    currently recognizes  the  SNPP     protocol
  168.        requests     listed    below.    Requests marked    with a    are non-
  169.        standard    extensions to RFC 1861 that may    be added to  SNPP
  170.        at  some     future    time.  Case is not distinguished and only
  171.        the first four characters of requests are used in  identi
  172.        fying commands.
  173.  
  174.        RReeqquueesstt        DDeessccrriippttiioonn
  175.        2WAY        preface a 2-way transaction
  176.        ABOR       abort previous command
  177.        ACKR        set    read acknowledgement handling for subsequent requests
  178.        ALER        set    the alter-level    for subsequent requests
  179.        CALL        set    the caller-ID for subsequent requests
  180.        COVE        set    the alternate coverage area for    subsequent requests
  181.        DATA        specify a multi-line message
  182.        EXPT        set    the expiration time for    subsequent requests
  183.        HELP        give help information
  184.        HOLD        set    the time at which subsequent requests are to be    delivered
  185.        KTAG        kill a previously submitted    request
  186.        LEVE        set    the service level for subsequent requests
  187.        LOGI        login to server
  188.        MCRE        specify multiple response text and code
  189.        MESS        specify a single-line message
  190.        MSTA        return the status of a previously submitted    request
  191.        NOQU        diable message queueing
  192.        PAGE        specify the    destination pager
  193.        PING        locate/validate a pager
  194.        QUIT        terminate session
  195.        RESE        reset server state
  196.        RTYP        set    the reply type code for    subsequent requests
  197.        SEND        send message(s)
  198.        SITE       site-specific commands (see next section)
  199.        STAT       return server status
  200.        SUBJ        set    the message text for subsequent    requests
  201.  
  202.        The  _h_f_a_x_d server will abort an active SEND operation when
  203.        an ABOR command is preceded by a     Telnet     "Interrupt  Pro
  204.        cess"  (IP) signal and a    Telnet "Synch" signal in the com
  205.        mand Telnet stream.
  206.  
  207.        The following non-standard or  experimental  commands  are
  208.        also supported through the SITE request.
  209.  
  210.        RReeqquueesstt          DDeessccrriippttiioonn
  211.        FROMUSER          specify the sender's identity
  212.        IDLE          set idle-timer (in seconds)
  213.        JPARM          query job    parameter status
  214.        JQUEUE          control whether or not job is queued
  215.        LASTTIME          set the time to terminate    an unfinished job
  216.        MAILADDR          set the e-mail address to    use for    notification
  217.        MAXDIALS          set the maximum number of    times to dial the phone
  218.        MAXTRIES          set the maximum number of    times to try sending the page
  219.        MODEM          set the modem or class of    modems to use
  220.        NOTIFY          set the e-mail notification
  221.        RETRYTIME      set the time to delay between job    retries
  222.        SCHEDPRI          set the scheduling priority for the job
  223.        HELP          give help    information, e.g., SITE    HELP
  224.  
  225.        Note  that  _h_f_a_x_d  requires  that SNPP clients login first
  226.        with the    LOGI directive while RFC 1861 permits clients  to
  227.        submit pages anonymously.
  228.  
  229. CCLLIIEENNTT AACCCCEESSSS CCOONNTTRROOLL
  230.        _h_f_a_x_d  controls client access according to the information
  231.        in the file $${{SSPPOOOOLL}}//eettcc//hhoossttss..hhffaaxxdd.  This  file  defines
  232.        the  set     of  users  and    machines that may receive service
  233.        and, optionally,    defines    password  challenges  to  use  in
  234.        authenticating  clients.      Clients may be permitted access
  235.        to services with    or without a password challenge.   Access
  236.        may  also  be  restricted based on the host machine that    a
  237.        request     for   service      originates    from.      Consult
  238.        _h_o_s_t_s_._h_f_a_x_d(${MANNUM4_5})  for  information  on the format
  239.        and content of  this  file.   The  SITE    ADDUSER     protocol
  240.        request    is  provided  for  adding  new    users to a server
  241.        (available only    to  clients  with  administrative  privi
  242.        leges).
  243.  
  244.        Server  resources are controlled    based on clients' identi
  245.        ties.  Jobs and documents, both    received  and  submitted,
  246.        are  protected  by the server.  Typically clients are per
  247.        mitted access to    anything they own  or  that  is     publicly
  248.        accessible.  There are also administrative privileges that
  249.        clients may acquire and which permit them wide  access  to
  250.        objects that reside on the server.
  251.  
  252.        A  complete  client-server protocol specification is still
  253.        outstanding.
  254.  
  255.        _h_f_a_x_d operates with its root directory set to the  top  of
  256.        the _H_y_l_a_F_A_X spooling area; ${SPOOL}.  This is done so that
  257.        clients see a virtual file hierarchy  that  is  completely
  258.        contained  within the _H_y_l_a_F_A_X operating environment on the
  259.        server machine.    Administrators however must be    aware  of
  260.        this  action when specifying files in the _h_f_a_x_d configura
  261.        tion file: absolute pathnames relative to the root of  the
  262.        spooling    should be used to specify filenames.
  263.  
  264. SSEERRVVEERR AACCCCEESSSS CCOONNTTRROOLL
  265.        The  file  $${{SSPPOOOOLL}}//eettcc//sshhuuttddoowwnn,  when present,    specifies
  266.        when to restrict    access to a server  machine.   When  this
  267.        file  is    present    and contains valid information _h_f_a_x_d will
  268.        permit only users with administrative privileges    to access
  269.        the  server.  Any other users that request service will be
  270.        denied access and negative server responses  will  include
  271.        any shutdown message specified in the shutdown file.  Con
  272.        sult _h_y_l_a_f_a_x_-_s_h_u_t_d_o_w_n(${MANNUM4_5}) for information on the
  273.        format and content of this file.
  274.  
  275.        The SHUT    protocol request can be    used to    schedule a server
  276.        shutdown; it is available only to clients with administra
  277.        tive  privileges.   To  make  a    shutdown server    available
  278.        again the shutdown file can be deleted with the DELE  pro
  279.        tocol  request  (_t_h_i_s _i_s    _t_o _b_e _r_e_p_l_a_c_e_d _w_i_t_h _a_n _`_`_u_n_s_h_u_t_'_'
  280.        _p_r_o_t_o_c_o_l    _r_e_q_u_e_s_t    _s_o _t_h_a_t    _i_m_p_l_e_m_e_n_t_a_t_i_o_n    _d_e_t_a_i_l_s     _a_r_e  _n_o_t
  281.        _p_a_r_t _o_f _t_h_e _p_r_o_t_o_c_o_l).
  282.  
  283. CCOONNFFIIGGUURRAATTIIOONN FFIILLEESS
  284.        _h_f_a_x_d reads configuration information from the file $${{LLIIBB
  285.        DDAATTAA}}//hhffaaxxdd..ccoonnff    each time a new    server process is started
  286.        (i.e.  for each new client).  This file uses the    same con
  287.        ventions    used by    other  _H_y_l_a_F_A_X    configuration  files;  as
  288.        described  in _h_y_l_a_f_a_x_-_c_o_n_f_i_g(${MANNUM4_5}).  The    following
  289.        configuration  parameters  are  recognized;  items  marked
  290.        ``(SNPP)'' are used only    by the SNPP support.
  291.        TTaagg            TTyyppee       DDeeffaauulltt             DDeessccrriippttiioonn
  292.        FaxContact        string       _s_e_e _b_e_l_o_w             contact address to    show in    help text
  293.        FileFmt            string       _s_e_e _b_e_l_o_w             format string for file status results
  294.        IdleTimeout        integer       900                 client idle timeout in seconds
  295.        JobFmt            string       _s_e_e _b_e_l_o_w             format string for job status results
  296.        KillTimeMap        string       _s_e_e _b_e_l_o_w             mapping from service level    to job kill time (SNPP)
  297.        LogFacility        string       daemon             _s_y_s_l_o_g facility name for tracing messages
  298.        MaxAdminAttempts        integer       5                 maximum admin attempts before disconnecting
  299.        MaxConsecutiveBadCmds    integer       10                 maximum invalid commands before disconnecting
  300.        MaxIdleTimeout        integer       7200                 maximum client idle timeout permitted
  301.        MaxLoginAttempts        integer       5                 maximum login attempts before disconnecting
  302.        MaxMsgLength        integer       128                 maximum pager message length (SNPP)
  303.        ModemFmt            string       _s_e_e _b_e_l_o_w             format string for modem status results
  304.        PagerIDMapFile        string       ${SPOOL}/etc/pagermap     name of file for mapping pager IDs    (SNPP)
  305.        PriorityMap        string       _s_e_e _b_e_l_o_w             mapping from service level    to job priority    (SNPP)
  306.        RcvFmt            string       _s_e_e _b_e_l_o_w             format string for received    facsimile status results
  307.        RetryTimeMap        string       _s_e_e _b_e_l_o_w             mapping from service level    to job retry time (SNPP)
  308.        ServerTracing        integer       1                 server tracing control vector
  309.        ShutdownFile        string       ${SPOOL}/etc/shutdown     name of shutdown control file
  310.        UserAccessFile        string       ${SPOOL}/etc/hosts.hfaxd  name of access control file
  311.        XferLogFile        string       ${SPOOL}/etc/clientlog    name of file for logging client data transfers
  312.  
  313.        The configuration parameters are    explained below:
  314.  
  315.        FFaaxxCCoonnttaacctt
  316.          The e-mail address to display as a point of con
  317.          tact in the help text returned    to  a  client  in
  318.          response  to the HELP or SITE HELP commands.  By
  319.          default this  is  ``FaxMaster@_h_o_s_t_n_a_m_e'',  where
  320.          _h_o_s_t_n_a_m_e  is  the  fully  qualified name for the
  321.          machine where the server is running.
  322.  
  323.        FFiilleeFFmmtt     The format string to  use  when  returning  file
  324.          status     information  with the LIST and    STAT com
  325.          mands.     Formats are specified    using  _p_r_i_n_t_f(3S)
  326.          style    conventions  but  using    the field identi
  327.          fiers listed below.  Each item    can include field
  328.          width,    precision, left-justification, 0-filling,
  329.          etc. just  as    for  _p_r_i_n_t_f;  e.g.  %-8p  for  an
  330.          8-character  wide,  left-justified, blank-padded
  331.          field containing the file protection flags.
  332.  
  333.          FFoorrmmaatt       DDeessccrriippttiioonn
  334.          a       Last    access time
  335.          c       Creation time
  336.          d       Device number (octal)
  337.          f       Filename
  338.          g       Group identifier (decimal)
  339.          i       Inode number    (decimal)
  340.          l       Link    count (decimal)
  341.          m       Last    modification time
  342.          o       Owner (based    on file    GID)
  343.          p       Fax-style protection    flags (no group    bits)
  344.          q       UNIX-style protection flags
  345.          r       Root    device number (octal)
  346.          s       File    size in    bytes (decimal)
  347.          u       User    identifier (decimal)
  348.  
  349.          The default format string is ``%-7p %3l %8o  %8s
  350.          %-12.12m  %.48f''.   It  is recommended that all
  351.          items include    a  field  width     so  that  client
  352.          applications  that  construct    headers     from the
  353.          format    string can constrain the width of  column
  354.          title strings.
  355.  
  356.        IIddlleeTTiimmeeoouutt
  357.          The initial/default timeout to    use in timing out
  358.          idle clients.    This value  defines  the  maximum
  359.          amount    of time    (in seconds) that _h_f_a_x_d    will wait
  360.          for a command from a client  before  terminating
  361.          the  connection.  Unprivileged    clients    may alter
  362.          the idle timeout up to    the value of _M_a_x_I_d_l_e_T_i_m_e_
  363.          _o_u_t;  privileged  clients may set the timeout to
  364.          any value.
  365.  
  366.        JJoobbFFmmtt     The format string to use when returning job sta
  367.          tus  information for jobs in the sseennddqq    and ddoonneeqq
  368.          directories.    Formats      are    specified   using
  369.          _p_r_i_n_t_f(3S) style conventions but using    the field
  370.          identifiers listed below.  Each item can include
  371.          field     width,      precision,  left-justification,
  372.          0-filling, etc. just as for  _p_r_i_n_t_f;  e.g.  %-3j
  373.          for  a     3-character wide, left-justified, blank-
  374.          padded    field containing the job state.
  375.  
  376.          FFoorrmmaatt       DDeessccrriippttiioonn
  377.          A       Destination SubAddress
  378.          B       Destination Password
  379.          C       Destination company name
  380.          D       Total # dials/maximum # dials
  381.          E       Desired signalling rate
  382.          F       Client-specific tagline format string
  383.          G       Desired min-scanline    time
  384.          H       Desired data    format
  385.          I       Client-specified scheduling priority
  386.          J       Client-specified job    tag string
  387.          K       Desired use of ECM
  388.          L       Destination geographic location
  389.          M       Notification    e-mail address
  390.          N       Desired use of private tagline (one-character symbol)
  391.          O       Whether to use continuation cover page (one-character symbol)
  392.          P       # pages transmitted/total # pages to    transmit
  393.          Q       Client-specified minimum acceptable signalling rate
  394.          R       Destination person (receiver)
  395.          S       Sender's identity
  396.          T       Total # tries/maximum # tries
  397.          U       Page    chopping threshold (inches)
  398.          V       Job done operation
  399.          W       Communication identifier
  400.          X       Job type (one-character symbol)
  401.          a       Job state (one-character symbol)
  402.          b       # consecutive failed    tries
  403.          c       Client machine name
  404.          d       Total # dials
  405.          e       Public (external) format of dialstring
  406.          f       # consecutive failed    dials
  407.          g       Group identifier
  408.          h       Page    chop handling (one-character symbol)
  409.          i       Current scheduling priority
  410.          j       Job identifier
  411.          k       Job kill time
  412.          l       Page    length in mm
  413.          m       Assigned modem
  414.          n       E-mail notification handling    (one-character symbol)
  415.          o       Job owner
  416.          p       # pages transmitted
  417.          q       Job retry time (MM::SS)
  418.          r       Document resolution in lines/inch
  419.          s       Job status information from last failure
  420.          t       Total # tries attempted
  421.          u       Maximum # tries
  422.          v       Client-specified dialstring
  423.          w       Page    width in mm
  424.          x       Maximum # dials
  425.          y       Total # pages to transmit
  426.          z       Time    to send    job
  427.  
  428.          The default format  string  is     ``%-4j     %3i  %1a
  429.          %6.6o %-12.12e    %5P %5D    %7z %.25s''.  This string
  430.          constrains each status    line to    be less     than  80
  431.          characters.   It  is  recommended that    all items
  432.          include a field width so  that     client     applica
  433.          tions,    such as    _f_a_x_s_t_a_t(1) that    construct headers
  434.          from the format string    can constrain  the  width
  435.          of column title strings.
  436.  
  437.        KKiillllTTiimmeeMMaapp
  438.          The  mapping  from  SNPP service level    (0-11) to
  439.          job expiration    time (kill time).  A  mapping  is
  440.          specified  as a string    of space-separate numbers
  441.          where each value is the  number  of  minutes  to
  442.          permit    a job to run.  The default mapping is ``5
  443.          5 5 15    60 240 720 1440     1440  1440  1440  1440''
  444.          which    expires     a  job     in 5 minutes for service
  445.          levels    0-2, 15    minutes    for level three, 60  min
  446.          utes for level    four, etc.
  447.  
  448.        LLooggFFaacciilliittyy
  449.          The  symbolic name for    the _s_y_s_l_o_g(3) facility to
  450.          use when logging  error  messages  and     informa
  451.          tional/debugging  messages requested through the
  452.          SSeerrvveerrTTrraacciinngg parameter.  The list  of     facility
  453.          names    is found in the    system include file <<ssyyss
  454.          lloogg..hh>>; comparisons are case-insensitive.
  455.  
  456.        MMaaxxAAddmmiinnAAtttteemmppttss
  457.          The maximum number of unsuccessful attempts gain
  458.          adminstrative    privileges with    the ADMIN command
  459.          that _h_f_a_x_d will permit    a client before    terminat
  460.          ing  the  connection.     Note  that  the count of
  461.          attempts is reset if/when  the     client     success
  462.          fully gains administrative privileges.
  463.  
  464.        MMaaxxCCoonnsseeccuuttiivveeBBaaddCCmmddss
  465.          The  maximum number of    consecutive unrecognized,
  466.          unimplemented,    syntactically incorrect, or  oth
  467.          erwise     unacceptable commands to permit a client
  468.          before    terminating the    connection.  This control
  469.          has  two  purposes: to    handle naive or    malicious
  470.          clients from sending long  streams  of     nonsense
  471.          commands to a server, and to insure that clients
  472.          are forcibly terminated when a    server is  marked
  473.          shutdown.
  474.  
  475.        MMaaxxIIddlleeTTiimmeeoouutt
  476.          The maximum value that    a client may set the idle
  477.          timeout to.  This value is not    enforced  if  the
  478.          client    has administrative privileges.
  479.  
  480.        MMaaxxLLooggiinnAAtttteemmppttss
  481.          The  maximum  number of unsuccessful attempts to
  482.          login with the    USER and PASS commands that _h_f_a_x_d
  483.          will permit a client before terminating the con
  484.          nection.
  485.  
  486.        MMaaxxMMssggLLeennggtthh
  487.          The maximum number of characters to accept in    a
  488.          pager    message     specified  with the DATA or MESS
  489.          commands.  Messages longer than this  value  are
  490.          rejected.
  491.  
  492.        MMooddeemmFFmmtt     The  format  string  to use when returning modem
  493.          status    information for    modems listed in the ssttaa
  494.          ttuuss  directory.   Formats  are     specified  using
  495.          _p_r_i_n_t_f(3S) style conventions but using    the field
  496.          identifiers listed below.  Each item can include
  497.          field    width,     precision,   left-justification,
  498.          0-filling,  etc.  just     as for    _p_r_i_n_t_f;    e.g. %-8h
  499.          for an    8-character wide, left-justified,  blank-
  500.          padded    field containing the name of the host the
  501.          server    is running on.
  502.  
  503.          FFoorrmmaatt       DDeessccrriippttiioonn
  504.          h       Server hostname
  505.          l       Local identifier string
  506.          m       Canonical modem name
  507.          n       FAX phone number
  508.          r       Maximum pages that can be received in a single call
  509.          s       Status information string
  510.          t       Server and session tracing levels (xxxxx:yyyyy)
  511.          v       Modem speaker volume    as one-character symbol
  512.          z       A ``*'' if a    _f_a_x_g_e_t_t_y(${MANNUM1_8}) process is running; otherwise ``    '' (space)
  513.  
  514.          The default format string is  ``Modem    %m  (%n):
  515.          %s''.
  516.  
  517.        PPaaggeerrIIDDMMaappFFiillee
  518.          The  absolute pathname    of the file that contains
  519.          directions  for  mapping  pager  identifiers  to
  520.          IXO/TAP or UCP    service    providers (and optionally
  521.          a   pager   identification   number).      Consult
  522.          _p_a_g_e_r_m_a_p(${MANNUM4_5})     for  information  on the
  523.          format    and content of    this  file.   (Note  that
  524.          absolute  pathnames  are relative to the root of
  525.          the spooling area).
  526.  
  527.        PPrriioorriittyyMMaapp
  528.          The mapping from SNPP service    level  (0-11)  to
  529.          job scheduling    priority.  A mapping is    specified
  530.          as a string of    space-separate numbers where each
  531.          value    is  the    priority to assign to a    job.  The
  532.          default mapping is ``63 127 127 127 127 127  127
  533.          127  127 127 127 127''    which assigns a    high pri
  534.          ority to service level    zero and normal    (default)
  535.          priority to all other service levels.
  536.  
  537.        RRccvvFFmmtt     The  format  string to    use when returning status
  538.          information for received facsimile in the  rreeccvvqq
  539.          directory.    Formats      are    specified   using
  540.          _p_r_i_n_t_f(3S) style conventions but using    the field
  541.          identifiers listed below.  Each item can include
  542.          field    width,     precision,   left-justification,
  543.          0-filling,  etc.  just     as for    _p_r_i_n_t_f;    e.g. %-3b
  544.          for a 3-character wide,  left-justified,  blank-
  545.          padded    field containing the signalling    rate.
  546.  
  547.          FFoorrmmaatt       DDeessccrriippttiioonn
  548.          a       SubAddress received from sender (if any)
  549.          b       Signalling rate used    during receive
  550.          d       Data    format used during receive
  551.          e       Error description if    an error occurred during receive
  552.          f       Document filename (relative to the rreeccvvqq directory)
  553.          h       Time    spent receiving    document (HH:MM:SS)
  554.          l       Page    length in mm
  555.          m       Fax-style protection    mode string (``-rwxrwx'')
  556.          n       File    size (number of    bytes)
  557.          o       File    owner
  558.          p       Number of pages in document
  559.          q       UNIX-style protection flags
  560.          r       Resolution of received data
  561.          s       Sender identity (TSI)
  562.          t       Compact representation of the time when the receive happened
  563.          w       Page    width in mm
  564.          z       A ``*'' if receive is going on; otherwise ``    '' (space)
  565.  
  566.          The  default  format  string  is  ``%-7m  %4p%1z
  567.          %-8.8o    %14.14s    %7t %f''.  This    string constrains
  568.          each  status line to be less than 80 characters.
  569.          It is recommended that    all items include a field
  570.          width so that client applications, such as _f_a_x_s_
  571.          _t_a_t(1)    that construct headers    from  the  format
  572.          string     can  constrain    the width of column title
  573.          strings.
  574.  
  575.        RReettrryyTTiimmeeMMaapp
  576.          The mapping from SNPP service    level  (0-11)  to
  577.          job  retry  time.   A    mapping    is specified as    a
  578.          string     of  space-separate  numbers  where  each
  579.          value    is the number of seconds to delay between
  580.          delivery  attempts.   A  value     of  zero  causes
  581.          retries  to be    scheduled using    the default algo
  582.          rithm used by the _H_y_l_a_F_A_X  job     scheduler.   The
  583.          default  mapping is ``30 60 60    180 0 0    0 0 0 0    0
  584.          0'' which retries a level 0 job after a 30  sec
  585.          ond  delay,  levels  1     and  2    after 60 seconds,
  586.          level 3 after 3  minutes,  and     other    jobs  are
  587.          retried  according to the usual scheduling algo
  588.          rithm.
  589.  
  590.        SSeerrvveerrTTrraacciinngg
  591.          A number that controls    the generation of tracing
  592.          information  by  a server.  _a_r_e_a_s that    are indi
  593.          vidually controlled.  To enable tracing of  mul
  594.          tiple    areas  of  operation, the flag associated
  595.          with each area    should be bit-or'd  to    form  the
  596.          value for this    tag.
  597.          FFllaagg          DDeessccrriippttiioonn
  598.          1 (0x00001)      General server operation
  599.          2 (0x00002)      Client-server    protocol requests and responses
  600.          4 (0x00004)      File transfers from client to    server
  601.          8 (0x00008)      File transfers from server to    client
  602.          16 (0x00010)      Client logins
  603.          32 (0x00020)      All network connections
  604.          64 (0x00040)      FIFO messages    to and from _f_a_x_q(${MANNUM1_8})
  605.          128 (0x00080)      TIFF Library errors and warnings
  606.          256 (0x00100)      Configuration    file processing
  607.  
  608.          Tracing messages are directed to _s_y_s_l_o_g(3) using
  609.          the _f_a_c_i_l_i_t_y specified    with the LLooggFFaacciilliittyy con
  610.          figuration  parameter.     Note that _s_y_s_l_o_g_d(${MAN
  611.          NUM1_8}) must be configured  to  capture  _f_a_c_i_l_
  612.          _i_t_y_._i_n_f_o,  _f_a_c_i_l_i_t_y_._d_e_b_u_g, _f_a_c_i_l_i_t_y_._w_a_r_n_i_n_g, and
  613.          _f_a_c_i_l_i_t_y_._e_r_r messages.
  614.  
  615.        SShhuuttddoowwnnFFiillee
  616.          The absolute pathname    of  the     server     shutdown
  617.          file;     see  _h_y_l_a_f_a_x_-_s_h_u_t_d_o_w_n(${MANNUM4_5})  for
  618.          information on    the format and    content     of  this
  619.          file.     (Note    that absolute pathnames    are rela
  620.          tive to the root of the spooling area).
  621.  
  622.        UUsseerrAAcccceessssFFiillee
  623.          The absolute pathname of the user access control
  624.          file; see _h_o_s_t_s_._h_f_a_x_d(${MANNUM4_5}) for informa
  625.          tion on the format and     content  of  this  file.
  626.          (Note    that  absolute    pathnames are relative to
  627.          the root of the spooling area).
  628.  
  629.        XXffeerrLLooggFFiillee
  630.          The absolute pathname of the  file  to     use  for
  631.          logging   client-server   file     transfers  (when
  632.          enabled through  the  SSeerrvveerrTTrraacciinngg  parameter).
  633.          (Note    that  absolute    pathnames are relative to
  634.          the root of the spooling area).
  635.  
  636. OOPPTTIIOONNSS
  637.        --qq _d_i_r     The specified directory is treated as the spool
  638.          ing  area.  The default spooling area,    _$_{_S_P_O_O_L_},
  639.          is defined at the time    the software is    built.
  640.  
  641.        --dd     Stop _h_f_a_x_d from _d_e_t_a_c_h_i_n_g itself from    the  con
  642.          trolling terminal.  This option is normally used
  643.          only when running _h_f_a_x_d under a debugger or when
  644.          _h_f_a_x_d is started up from the _i_n_e_t_d(${MANNUM1_8})
  645.          process.
  646.  
  647.        --ii _p_o_r_t     Listen     on  the  specified  _p_o_r_t   for      service
  648.          requests  and    respond     with  the  (new) client-
  649.          server    protocol.   The     port  may  be    specified
  650.          either    symbolically, e.g. ``hylafax'' or numeri
  651.          cally.     This  flag  may  be  specified     multiple
  652.          times    to  request service on multiple    different
  653.          ports.
  654.  
  655.        --oo _p_o_r_t     Listen     on  the  specified  _p_o_r_t   for      service
  656.          requests  and respond with the    old client-server
  657.          protocol.  The    port may be specified either sym
  658.          bolically,  e.g.  ``fax''  or numerically.  This
  659.          flag may be specified multiple    times to  request
  660.          service on multiple different ports.
  661.  
  662.        --ss _p_o_r_t     Listen      on   the  specified  _p_o_r_t  for  service
  663.          requests and respond  with  the  Simple  Network
  664.          Paging     (SNPP)    protocol.  The port may    be speci
  665.          fied  either  symbolically,  e.g.  ``snpp''   or
  666.          numerically.    This flag may be specified multi
  667.          ple times to request service on multiple differ
  668.          ent ports.
  669.  
  670.        --II     Service  the  (new) client-server protocol using
  671.          the standard input and    output.     This  option  is
  672.          useful     when _h_f_a_x_d is started up by _i_n_e_t_d(${MAN
  673.          NUM1_8}).
  674.  
  675.        --OO     Service the old client-server protocol    using the
  676.          standard  input and output.  This option is use
  677.          ful when _h_f_a_x_d    is  started  up     by  _i_n_e_t_d(${MAN
  678.          NUM1_8}).
  679.  
  680.        --SS     Service  the Simple Network Paging (SNPP) proto
  681.          col using the standard    input and  output.   This
  682.          option     is  useful  when  _h_f_a_x_d is started up by
  683.          _i_n_e_t_d(${MANNUM1_8}).
  684.  
  685. DDIIAAGGNNOOSSTTIICCSS
  686.        Diagnostics generated by    _h_f_a_x_d are logged using _s_y_s_l_o_g(3).
  687.  
  688. FFIILLEESS
  689.        ${LIBDATA}/hfaxd.conf     server    configuration file
  690.        ${SPOOL}             spooling area
  691.        ${SPOOL}/FIFO         for submitting    the job
  692.        ${SPOOL}/sendq         where job description is placed
  693.        ${SPOOL}/sendq/seqf     for assigning job identifiers
  694.        ${SPOOL}/docq/seqf     for assigning document    identifiers
  695.        ${SPOOL}/tmp         temporary location of job-related files
  696.        ${SPOOL}/docq         where document    files are placed
  697.        ${SPOOL}/recvq         where received    facsimile are found
  698.        ${SPOOL}/archive         where archived    jobs are placed
  699.        ${SPOOL}/log         for server log    files
  700.        ${SPOOL}/client         for FIFO files    used in    communicating with _f_a_x_q
  701.        ${SPOOL}/status         for server status information
  702.        ${SPOOL}/config._d_e_v_i_c_e     for returning server status
  703.        ${SPOOL}/etc/hosts.hfaxd     host access control list
  704.        ${SPOOL}/etc/shutdown     server    shutdown control
  705.        ${SPOOL}/etc/pagermap     SNPP pager ID mapping file
  706.  
  707. BBUUGGSS
  708.        To be filled in.
  709.  
  710. SSEEEE AALLSSOO
  711.        _s_e_n_d_f_a_x(1),   _s_e_n_d_p_a_g_e(1),  _f_a_x_a_l_t_e_r(1),     _f_a_x_r_m(1),  _f_a_x_s_
  712.        _t_a_t(1),       _f_a_x_q(${MANNUM1_8}),       _s_y_s_l_o_g(3)     _h_y_l_a_f_a_x_-
  713.        _s_e_r_v_e_r(${MANNUM4_5}),    _h_o_s_t_s_._h_f_a_x_d(${MANNUM4_5}),   _s_t_a_
  714.        _t_u_s(${MANNUM4_5}), _h_y_l_a_f_a_x_-_s_h_u_t_d_o_w_n(${MANNUM4_5}),
  715.  
  716.  
  717.  
  718.               July 12, 1996          HFAXD(${MANNUM1_8})
  719.